#ifndef MM_RTSP_SERVER_H_
#define MM_RTSP_SERVER_H_

// 符号导出控制
#if defined(_WIN32) || defined(__CYGWIN__)
#ifdef BUILDING_DLL
#define RTSP_API __declspec(dllexport)
#else
#define RTSP_API __declspec(dllimport)
#endif
#else
#if __GNUC__ >= 4
#define RTSP_API __attribute__((visibility("default")))
#else
#define RTSP_API
#endif
#endif

#include "mk_mediakit.h"
#ifdef __cplusplus
extern "C"
{
#endif

    RTSP_API mk_media API_CALL RtspServerInit(const char* stream_name);
    RTSP_API void API_CALL RtspServerunInit(mk_media media);
    // RTSP_API void API_CALL RtspPutframe(mk_media media, const char *data, int size);
    RTSP_API void API_CALL Zl_SendWebsockString(const char *data, int size);
    RTSP_API void API_CALL Ws_server(int port);
    // 声明 HTTP 回调函数（供外部使用）
    RTSP_API void API_CALL on_mk_http_request(const mk_parser parser,
        const mk_http_response_invoker invoker,
        int* consumed,
        const mk_sock_info sender);
#ifdef __cplusplus
}
#endif

#endif /* MM_RTSP_SERVER_H_ */
